package com.shujia.wyh.day05;

/*
    1、要想初始化子类，必须先初始化父类，子类构造方法第一行话默认会有一个super()
    2、父类不能进行多次初始化

    初始化指的是将类加载到方法区中的class文件区中，将类中的成员，都会进行一次编译过一遍

    Y X Y Z
 */
class X {
    Y b = new Y();
    X() {
        System.out.print("X");
    }
}
class Y {
    Y() {
        System.out.print("Y");
    }
}
public class ExtendsDemo5 extends X {
    Y y = new Y();
    ExtendsDemo5() {
        //super(); //尽管这里有super()会调用父类的构造方法，但是这题比较特殊，在此之前X类已经做过初始化
        System.out.print("Z");
    }
    public static void main(String[] args) {
        new ExtendsDemo5();
    }
}


